2008年03月18日
川俣晶の縁側ソフトウェア技術雑記 total 16676 count

Visual Studio 2005/2008のセットアップ機能で作成したショートカットは「アドバタイズショートカット」となり、出来ない操作がある

Written By: 川俣 晶連絡先

 これまで盲点になっていて気付かなかった話題に気付いたのでメモっておきます。

 C#メーリングリストの「[CS:08331] Re: セットアッププロジェクトによる、Vista UACの盾アイコンが付いたショートカットの作成方法」等の情報+αです。

 なお、以下の情報の一部は自分で検証していません。なので、曖昧な書き方になっています。

問題の要点 §

 Visual Studio 2005/2008のセットアップ機能で作成したショートカットは「アドバタイズショートカット」になる。その結果として、通常のショートカットとは以下のような挙動の相違が生じるようです。

  • リンク先のファイルを明示的に指定できない (自動的に発見される)
  • ショートカットのプロパティを表示させても、管理者で実行をチェックできない。互換性の設定タブも出てこない
  • 右クリックしても「管理者で実行」が表示されない
  • Windowsの「送る」フォルダにショートカットを作成しても正常に機能しない
  • ファイルをショートカットのアイコン上にドロップしてもアプリが起動しない
  • 管理者で実行される実行ファイルに対して盾マークが付かない

 ただし、管理者で実行させたい場合はマニフェストにそう書けば良いだけの話なので、致命的な問題ではないと思われます)。というよりも、本来はユーザーが手動で「管理者で実行」を選ぶことを求めるべきではないでしょう。

 他の問題は、通常のショートカットを作成することで回避できるようです。

通常のショートカットを作成させるには §

 いくつかの方法により、「アドバタイズショートカット」ではなく通常のショートカットを作成させることができます。

アドバタイズショートカットではなく、普通のショートカットを作成する

 Windows SDKに含まれるOrcaを使う場合は、Windows SDKをインストールした上で、インストール結果に含まれるOrcsのインストーラをもう一度実行してインストールする必要があります。

Orca データベース エディタを使用して Windows インストーラ ファイルを編集する方法